package negocios;

import java.util.Date;

/**
 * Classe que representa uma mensagem normal de correio eletronico.
 * 
 * @author Jonathan Brilhante
 * @author Jose Rafael
 * @author Nata Venancio
 * @author Renato Almeida
 * 
 * @version 2.0
 */

public class MensagemTexto extends MensagemAbstrata {
	protected String conteudo;

	/**
	 * Cria uma mensagem textual de correio eletronico
	 * 
	 * @param remetente
	 *            o remetente da mensagem
	 * @param para
	 *            email do receptor
	 * @param assunto
	 *            o assunto da mensagem
	 * @param conteudo
	 *            o conteudo da mensagem
	 */
	public MensagemTexto(String remetente, String para, String assunto,
			String conteudo) {
		this(remetente, para, assunto, conteudo, new Date());
	}

	/**
	 * Cria uma mensagem textual de correio eletronico
	 * 
	 * @param remetente
	 *            o remetente da mensagem
	 * @param para
	 *            o email do receptor
	 * @param assunto
	 *            o assunto da mensagem
	 * @param conteudo
	 *            o conteudo da mensagem
	 * @param data
	 *            a data de envio da mensagem
	 */
	public MensagemTexto(String remetente, String para, String assunto,
			String conteudo, Date data) {
		super(remetente, para, assunto, data);
		this.conteudo = conteudo;
	}

	protected String corpo() {
		return "Subject: " + assunto + ENDL + ENDL + getConteudo();
	}

	public String getConteudo() {
		return conteudo;
	}

	public boolean equals(Object objeto) {
		if (!(objeto instanceof MensagemTexto)) {
			return false;
		}
		MensagemTexto outra = (MensagemTexto) objeto;
		return super.equals(objeto)
				&& getConteudo().equals(outra.getConteudo());
	}
}